<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <meta http-equiv="X-UA-Compatible" content="ie=edge" />
    <style>
      body {
        font-family: "Courier New", Courier, monospace;
      }
      .clickable {
        cursor: pointer;
      }
      .clickable::before {
        content: "___";
        color: transparent;
      }
      .highlighted {
        font-style: italic;
        background-color: yellow;
      }
      .highlighted::before {
        content: "=> ";
        color: inherit;
      }
      .selected {
        font-style: italic;
        background-color: lightyellow;
      }
      .selected::before {
        content: "== ";
        color: inherit;
        font-weight: bold;
      }
      .invalid {
        color: darkred;
      }
      .invalid::before {
        content: "xx ";
        color: darkred;
      }
      td {
        vertical-align: top;
      }
      table {
        overflow: hidden;
      }
    </style>
    <title>Navigate</title>
  </head>
  <body>
    <table id="table">
      <tr id="thisrow"></tr>
    </table>
    <script>
      var lDependencies = {
        modules: [
          {
            source: "src/cli/formatMetaInfo.js",
            dependencies: [
              {
                resolved: "src/main/index.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "../main",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "node_modules/chalk/index.js",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["npm"],
                license: "MIT",
                module: "chalk",
                moduleSystem: "cjs",
                matchesDoNotFollow: true,
                circular: false,
                valid: true,
              },
              {
                resolved: "node_modules/figures/index.js",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["npm"],
                license: "MIT",
                module: "figures",
                moduleSystem: "cjs",
                matchesDoNotFollow: true,
                circular: false,
                valid: true,
              },
            ],
            valid: true,
          },
          {
            source: "node_modules/chalk/index.js",
            followable: false,
            coreModule: false,
            couldNotResolve: false,
            matchesDoNotFollow: true,
            dependencyTypes: ["npm"],
            dependencies: [],
            valid: true,
          },
          {
            source: "node_modules/figures/index.js",
            followable: false,
            coreModule: false,
            couldNotResolve: false,
            matchesDoNotFollow: true,
            dependencyTypes: ["npm"],
            dependencies: [],
            valid: true,
          },
          {
            source: "src/main/index.js",
            dependencies: [
              {
                resolved: "src/extract/index.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "../extract",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/extract/transpile/meta.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "../extract/transpile/meta",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/report/csv/index.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "../report/csv",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/report/dot/index.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "../report/dot",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/report/err.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "../report/err",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: false,
              },
              {
                resolved: "src/report/html/index.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "../report/html",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/report/json.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "../report/json",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/main/options/normalize.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./options/normalize",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/main/options/validate.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./options/validate",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/main/ruleSet/normalize.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./ruleSet/normalize",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/main/ruleSet/validate.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./ruleSet/validate",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
            ],
            valid: true,
          },
          {
            source: "src/extract/index.js",
            dependencies: [
              {
                resolved: "src/utl/pathToPosix.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "../utl/pathToPosix",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/extract/addValidations.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./addValidations",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/extract/derive/circular/index.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./derive/circular",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/extract/derive/orphan/index.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./derive/orphan",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/extract/extract.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./extract",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/extract/gatherInitialSources.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./gatherInitialSources",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/extract/summarize.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./summarize",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "node_modules/lodash/lodash.js",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["npm"],
                license: "MIT",
                module: "lodash",
                moduleSystem: "cjs",
                matchesDoNotFollow: true,
                circular: false,
                valid: false,
                rules: [
                  {
                    severity: "info",
                    name: "prefer-no-lodash",
                  },
                ],
              },
            ],
            valid: true,
          },
          {
            source: "node_modules/lodash/lodash.js",
            followable: false,
            coreModule: false,
            couldNotResolve: false,
            matchesDoNotFollow: true,
            dependencyTypes: ["npm"],
            dependencies: [],
            valid: true,
          },
          {
            source: "src/utl/pathToPosix.js",
            dependencies: [
              {
                resolved: "path",
                coreModule: true,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["core"],
                module: "path",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
            ],
            valid: true,
          },
          {
            source: "path",
            followable: false,
            coreModule: true,
            couldNotResolve: false,
            matchesDoNotFollow: false,
            dependencyTypes: ["core"],
            dependencies: [],
            valid: true,
          },
          {
            source: "src/extract/addValidations.js",
            dependencies: [
              {
                resolved: "src/validate/index.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "../validate",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
            ],
            valid: true,
          },
          {
            source: "src/validate/index.js",
            dependencies: [
              {
                resolved: "src/validate/matchDependencyRule.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./matchDependencyRule",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/validate/matchModuleRule.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./matchModuleRule",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
            ],
            valid: true,
          },
          {
            source: "src/validate/matchDependencyRule.js",
            dependencies: [
              {
                resolved: "src/validate/isModuleOnlyRule.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./isModuleOnlyRule",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
            ],
            valid: true,
          },
          {
            source: "src/validate/isModuleOnlyRule.js",
            dependencies: [],
            valid: true,
          },
          {
            source: "src/validate/matchModuleRule.js",
            dependencies: [
              {
                resolved: "src/validate/isModuleOnlyRule.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./isModuleOnlyRule",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
            ],
            valid: true,
          },
          {
            source: "src/extract/derive/circular/index.js",
            dependencies: [
              {
                resolved:
                  "src/extract/derive/circular/dependencyEndsUpAtFrom.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./dependencyEndsUpAtFrom",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
            ],
            valid: true,
          },
          {
            source: "src/extract/derive/circular/dependencyEndsUpAtFrom.js",
            dependencies: [],
            valid: true,
          },
          {
            source: "src/extract/derive/orphan/index.js",
            dependencies: [
              {
                resolved: "src/extract/derive/orphan/isOrphan.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./isOrphan",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
            ],
            valid: true,
          },
          {
            source: "src/extract/derive/orphan/isOrphan.js",
            dependencies: [],
            valid: true,
          },
          {
            source: "src/extract/extract.js",
            dependencies: [
              {
                resolved: "src/extract/ast-extractors/extract-AMD-deps.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./ast-extractors/extract-AMD-deps",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/extract/ast-extractors/extract-ES6-deps.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./ast-extractors/extract-ES6-deps",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/extract/ast-extractors/extract-commonJS-deps.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./ast-extractors/extract-commonJS-deps",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved:
                  "src/extract/ast-extractors/extract-typescript-deps.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./ast-extractors/extract-typescript-deps",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/extract/ignore.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                license: "MIT",
                module: "./ignore",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/extract/parse/toJavascriptAST.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./parse/toJavascriptAST",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/extract/parse/toTypescriptAST.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./parse/toTypescriptAST",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/extract/resolve/index.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                license: "MIT",
                module: "./resolve",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "node_modules/lodash/lodash.js",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["npm"],
                license: "MIT",
                module: "lodash",
                moduleSystem: "cjs",
                matchesDoNotFollow: true,
                circular: false,
                valid: false,
                rules: [
                  {
                    severity: "info",
                    name: "prefer-no-lodash",
                  },
                ],
              },
              {
                resolved: "path",
                coreModule: true,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["core"],
                module: "path",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
            ],
            valid: true,
          },
          {
            source: "src/extract/ast-extractors/extract-AMD-deps.js",
            dependencies: [
              {
                resolved: "src/extract/ast-extractors/extract-commonJS-deps.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./extract-commonJS-deps",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "node_modules/acorn/dist/walk.js",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["npm"],
                license: "MIT",
                module: "acorn/dist/walk",
                moduleSystem: "cjs",
                matchesDoNotFollow: true,
                circular: false,
                valid: true,
              },
            ],
            valid: true,
          },
          {
            source: "node_modules/acorn/dist/walk.js",
            followable: false,
            coreModule: false,
            couldNotResolve: false,
            matchesDoNotFollow: true,
            dependencyTypes: ["npm"],
            dependencies: [],
            valid: true,
          },
          {
            source: "src/extract/ast-extractors/extract-commonJS-deps.js",
            dependencies: [
              {
                resolved: "node_modules/acorn/dist/walk.js",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["npm"],
                license: "MIT",
                module: "acorn/dist/walk",
                moduleSystem: "cjs",
                matchesDoNotFollow: true,
                circular: false,
                valid: true,
              },
            ],
            valid: true,
          },
          {
            source: "src/extract/ast-extractors/extract-ES6-deps.js",
            dependencies: [
              {
                resolved: "node_modules/acorn/dist/walk.js",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["npm"],
                license: "MIT",
                module: "acorn/dist/walk",
                moduleSystem: "cjs",
                matchesDoNotFollow: true,
                circular: false,
                valid: true,
              },
            ],
            valid: true,
          },
          {
            source: "src/extract/ast-extractors/extract-typescript-deps.js",
            dependencies: [
              {
                resolved: "package.json",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "../../../package.json",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "node_modules/semver-try-require/src/index.js",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["npm"],
                license: "MIT",
                module: "semver-try-require",
                moduleSystem: "cjs",
                matchesDoNotFollow: true,
                circular: false,
                valid: true,
              },
            ],
            valid: true,
          },
          {
            source: "package.json",
            followable: false,
            coreModule: false,
            couldNotResolve: false,
            matchesDoNotFollow: false,
            dependencyTypes: ["local"],
            dependencies: [],
            valid: true,
          },
          {
            source: "node_modules/semver-try-require/src/index.js",
            followable: false,
            coreModule: false,
            couldNotResolve: false,
            matchesDoNotFollow: true,
            dependencyTypes: ["npm"],
            dependencies: [],
            valid: true,
          },
          {
            source: "src/extract/ignore.js",
            dependencies: [],
            valid: true,
          },
          {
            source: "src/extract/parse/toJavascriptAST.js",
            dependencies: [
              {
                resolved: "src/utl/getExtension.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "../../utl/getExtension",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/extract/transpile/index.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "../transpile",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "node_modules/acorn/dist/acorn.js",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["npm"],
                license: "MIT",
                module: "acorn",
                moduleSystem: "cjs",
                matchesDoNotFollow: true,
                circular: false,
                valid: true,
              },
              {
                resolved: "node_modules/acorn/dist/acorn_loose.js",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["npm"],
                license: "MIT",
                module: "acorn/dist/acorn_loose",
                moduleSystem: "cjs",
                matchesDoNotFollow: true,
                circular: false,
                valid: true,
              },
              {
                resolved: "fs",
                coreModule: true,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["core"],
                module: "fs",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "node_modules/lodash/memoize.js",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["npm"],
                license: "MIT",
                module: "lodash/memoize",
                moduleSystem: "cjs",
                matchesDoNotFollow: true,
                circular: false,
                valid: true,
              },
            ],
            valid: true,
          },
          {
            source: "node_modules/acorn/dist/acorn.js",
            followable: false,
            coreModule: false,
            couldNotResolve: false,
            matchesDoNotFollow: true,
            dependencyTypes: ["npm"],
            dependencies: [],
            valid: true,
          },
          {
            source: "node_modules/acorn/dist/acorn_loose.js",
            followable: false,
            coreModule: false,
            couldNotResolve: false,
            matchesDoNotFollow: true,
            dependencyTypes: ["npm"],
            dependencies: [],
            valid: true,
          },
          {
            source: "fs",
            followable: false,
            coreModule: true,
            couldNotResolve: false,
            matchesDoNotFollow: false,
            dependencyTypes: ["core"],
            dependencies: [],
            valid: true,
          },
          {
            source: "node_modules/lodash/memoize.js",
            followable: false,
            coreModule: false,
            couldNotResolve: false,
            matchesDoNotFollow: true,
            dependencyTypes: ["npm"],
            dependencies: [],
            valid: true,
          },
          {
            source: "src/utl/getExtension.js",
            dependencies: [
              {
                resolved: "path",
                coreModule: true,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["core"],
                module: "path",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
            ],
            valid: true,
          },
          {
            source: "src/extract/transpile/index.js",
            dependencies: [
              {
                resolved: "src/extract/transpile/meta.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./meta",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
            ],
            valid: true,
          },
          {
            source: "src/extract/transpile/meta.js",
            dependencies: [
              {
                resolved: "package.json",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "../../../package.json",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/extract/transpile/coffeeWrap.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./coffeeWrap",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/extract/transpile/javaScriptWrap.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./javaScriptWrap",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/extract/transpile/liveScriptWrap.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./liveScriptWrap",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/extract/transpile/typeScriptWrap.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./typeScriptWrap",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
            ],
            valid: true,
          },
          {
            source: "src/extract/transpile/coffeeWrap.js",
            dependencies: [
              {
                resolved: "package.json",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "../../../package.json",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "node_modules/semver-try-require/src/index.js",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["npm"],
                license: "MIT",
                module: "semver-try-require",
                moduleSystem: "cjs",
                matchesDoNotFollow: true,
                circular: false,
                valid: true,
              },
            ],
            valid: true,
          },
          {
            source: "src/extract/transpile/javaScriptWrap.js",
            dependencies: [],
            valid: true,
          },
          {
            source: "src/extract/transpile/liveScriptWrap.js",
            dependencies: [
              {
                resolved: "package.json",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "../../../package.json",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "node_modules/semver-try-require/src/index.js",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["npm"],
                license: "MIT",
                module: "semver-try-require",
                moduleSystem: "cjs",
                matchesDoNotFollow: true,
                circular: false,
                valid: true,
              },
            ],
            valid: true,
          },
          {
            source: "src/extract/transpile/typeScriptWrap.js",
            dependencies: [
              {
                resolved: "package.json",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "../../../package.json",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "node_modules/semver-try-require/src/index.js",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["npm"],
                license: "MIT",
                module: "semver-try-require",
                moduleSystem: "cjs",
                matchesDoNotFollow: true,
                circular: false,
                valid: true,
              },
            ],
            valid: true,
          },
          {
            source: "src/extract/parse/toTypescriptAST.js",
            dependencies: [
              {
                resolved: "package.json",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "../../../package.json",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "fs",
                coreModule: true,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["core"],
                module: "fs",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "node_modules/lodash/memoize.js",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["npm"],
                license: "MIT",
                module: "lodash/memoize",
                moduleSystem: "cjs",
                matchesDoNotFollow: true,
                circular: false,
                valid: true,
              },
              {
                resolved: "node_modules/semver-try-require/src/index.js",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["npm"],
                license: "MIT",
                module: "semver-try-require",
                moduleSystem: "cjs",
                matchesDoNotFollow: true,
                circular: false,
                valid: true,
              },
            ],
            valid: true,
          },
          {
            source: "src/extract/resolve/index.js",
            dependencies: [
              {
                resolved: "src/utl/pathToPosix.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "../../utl/pathToPosix",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/extract/resolve/resolve-AMD.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./resolve-AMD",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/extract/resolve/resolve-commonJS.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./resolve-commonJS",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "fs",
                coreModule: true,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["core"],
                module: "fs",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "path",
                coreModule: true,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["core"],
                module: "path",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
            ],
            valid: true,
          },
          {
            source: "src/extract/resolve/resolve-AMD.js",
            dependencies: [
              {
                resolved: "src/utl/pathToPosix.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "../../utl/pathToPosix",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/extract/resolve/determineDependencyTypes.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./determineDependencyTypes",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/extract/resolve/readPackageDeps.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./readPackageDeps",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/extract/resolve/resolve-helpers.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./resolve-helpers",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "fs",
                coreModule: true,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["core"],
                module: "fs",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "node_modules/lodash/memoize.js",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["npm"],
                license: "MIT",
                module: "lodash/memoize",
                moduleSystem: "cjs",
                matchesDoNotFollow: true,
                circular: false,
                valid: true,
              },
              {
                resolved: "path",
                coreModule: true,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["core"],
                module: "path",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "node_modules/resolve/index.js",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["npm"],
                license: "MIT",
                module: "resolve",
                moduleSystem: "cjs",
                matchesDoNotFollow: true,
                circular: false,
                valid: true,
              },
            ],
            valid: true,
          },
          {
            source: "node_modules/resolve/index.js",
            followable: false,
            coreModule: false,
            couldNotResolve: false,
            matchesDoNotFollow: true,
            dependencyTypes: ["npm"],
            dependencies: [],
            valid: true,
          },
          {
            source: "src/extract/resolve/determineDependencyTypes.js",
            dependencies: [
              {
                resolved: "src/extract/resolve/localNpmHelpers.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./localNpmHelpers",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "path",
                coreModule: true,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["core"],
                module: "path",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "node_modules/resolve/index.js",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["npm"],
                license: "MIT",
                module: "resolve",
                moduleSystem: "cjs",
                matchesDoNotFollow: true,
                circular: false,
                valid: true,
              },
            ],
            valid: true,
          },
          {
            source: "src/extract/resolve/localNpmHelpers.js",
            dependencies: [
              {
                resolved: "fs",
                coreModule: true,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["core"],
                module: "fs",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "node_modules/lodash/memoize.js",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["npm"],
                license: "MIT",
                module: "lodash/memoize",
                moduleSystem: "cjs",
                matchesDoNotFollow: true,
                circular: false,
                valid: true,
              },
              {
                resolved: "path",
                coreModule: true,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["core"],
                module: "path",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "node_modules/resolve/index.js",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["npm"],
                license: "MIT",
                module: "resolve",
                moduleSystem: "cjs",
                matchesDoNotFollow: true,
                circular: false,
                valid: true,
              },
            ],
            valid: true,
          },
          {
            source: "src/extract/resolve/readPackageDeps.js",
            dependencies: [
              {
                resolved: "fs",
                coreModule: true,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["core"],
                module: "fs",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "node_modules/lodash/memoize.js",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["npm"],
                license: "MIT",
                module: "lodash/memoize",
                moduleSystem: "cjs",
                matchesDoNotFollow: true,
                circular: false,
                valid: true,
              },
              {
                resolved: "path",
                coreModule: true,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["core"],
                module: "path",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
            ],
            valid: true,
          },
          {
            source: "src/extract/resolve/resolve-helpers.js",
            dependencies: [
              {
                resolved: "src/extract/resolve/localNpmHelpers.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./localNpmHelpers",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
            ],
            valid: true,
          },
          {
            source: "src/extract/resolve/resolve-commonJS.js",
            dependencies: [
              {
                resolved: "src/utl/getExtension.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "../../utl/getExtension",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/utl/pathToPosix.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "../../utl/pathToPosix",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/extract/transpile/meta.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "../transpile/meta",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/extract/resolve/determineDependencyTypes.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./determineDependencyTypes",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/extract/resolve/readPackageDeps.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./readPackageDeps",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/extract/resolve/resolve-helpers.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./resolve-helpers",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "node_modules/enhanced-resolve/lib/node.js",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["npm"],
                module: "enhanced-resolve",
                moduleSystem: "cjs",
                matchesDoNotFollow: true,
                circular: false,
                valid: true,
              },
              {
                resolved: "path",
                coreModule: true,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["core"],
                module: "path",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "node_modules/resolve/index.js",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["npm"],
                license: "MIT",
                module: "resolve",
                moduleSystem: "cjs",
                matchesDoNotFollow: true,
                circular: false,
                valid: true,
              },
            ],
            valid: true,
          },
          {
            source: "node_modules/enhanced-resolve/lib/node.js",
            followable: false,
            coreModule: false,
            couldNotResolve: false,
            matchesDoNotFollow: true,
            dependencyTypes: ["npm"],
            dependencies: [],
            valid: true,
          },
          {
            source: "src/extract/gatherInitialSources.js",
            dependencies: [
              {
                resolved: "src/extract/ignore.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                license: "MIT",
                module: "./ignore",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/extract/transpile/meta.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./transpile/meta",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "fs",
                coreModule: true,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["core"],
                module: "fs",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "node_modules/glob/glob.js",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["npm"],
                license: "ISC",
                module: "glob",
                moduleSystem: "cjs",
                matchesDoNotFollow: true,
                circular: false,
                valid: true,
              },
              {
                resolved: "path",
                coreModule: true,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["core"],
                module: "path",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
            ],
            valid: true,
          },
          {
            source: "node_modules/glob/glob.js",
            followable: false,
            coreModule: false,
            couldNotResolve: false,
            matchesDoNotFollow: true,
            dependencyTypes: ["npm"],
            dependencies: [],
            valid: true,
          },
          {
            source: "src/extract/summarize.js",
            dependencies: [
              {
                resolved: "node_modules/lodash/flattenDeep.js",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["npm"],
                license: "MIT",
                module: "lodash/flattenDeep",
                moduleSystem: "cjs",
                matchesDoNotFollow: true,
                circular: false,
                valid: true,
              },
            ],
            valid: true,
          },
          {
            source: "node_modules/lodash/flattenDeep.js",
            followable: false,
            coreModule: false,
            couldNotResolve: false,
            matchesDoNotFollow: true,
            dependencyTypes: ["npm"],
            dependencies: [],
            valid: true,
          },
          {
            source: "src/report/csv/index.js",
            dependencies: [
              {
                resolved: "src/report/dependencyToIncidenceTransformer.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "../dependencyToIncidenceTransformer",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/report/csv/csv.template.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./csv.template",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "node_modules/handlebars/runtime.js",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["npm"],
                license: "MIT",
                module: "handlebars/runtime",
                moduleSystem: "cjs",
                matchesDoNotFollow: true,
                circular: false,
                valid: true,
              },
            ],
            valid: true,
          },
          {
            source: "node_modules/handlebars/runtime.js",
            followable: false,
            coreModule: false,
            couldNotResolve: false,
            matchesDoNotFollow: true,
            dependencyTypes: ["npm"],
            dependencies: [],
            valid: true,
          },
          {
            source: "src/report/dependencyToIncidenceTransformer.js",
            dependencies: [],
            valid: true,
          },
          {
            source: "src/report/csv/csv.template.js",
            dependencies: [
              {
                resolved: "node_modules/handlebars/runtime.js",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["npm"],
                license: "MIT",
                module: "handlebars/runtime",
                moduleSystem: "cjs",
                matchesDoNotFollow: true,
                circular: false,
                valid: true,
              },
            ],
            valid: true,
          },
          {
            source: "src/report/dot/index.js",
            dependencies: [
              {
                resolved: "src/report/dot/coloring.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./coloring",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/report/dot/dot.template.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./dot.template",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "node_modules/handlebars/runtime.js",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["npm"],
                license: "MIT",
                module: "handlebars/runtime",
                moduleSystem: "cjs",
                matchesDoNotFollow: true,
                circular: false,
                valid: true,
              },
              {
                resolved: "path",
                coreModule: true,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["core"],
                module: "path",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
            ],
            valid: true,
          },
          {
            source: "src/report/dot/coloring.js",
            dependencies: [],
            valid: true,
          },
          {
            source: "src/report/dot/dot.template.js",
            dependencies: [
              {
                resolved: "node_modules/handlebars/runtime.js",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["npm"],
                license: "MIT",
                module: "handlebars/runtime",
                moduleSystem: "cjs",
                matchesDoNotFollow: true,
                circular: false,
                valid: true,
              },
            ],
            valid: true,
          },
          {
            source: "src/report/err.js",
            dependencies: [
              {
                resolved: "node_modules/chalk/index.js",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["npm"],
                license: "MIT",
                module: "chalk",
                moduleSystem: "cjs",
                matchesDoNotFollow: true,
                circular: false,
                valid: true,
              },
              {
                resolved: "node_modules/figures/index.js",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["npm"],
                license: "MIT",
                module: "figures",
                moduleSystem: "cjs",
                matchesDoNotFollow: true,
                circular: false,
                valid: true,
              },
            ],
            valid: false,
          },
          {
            source: "src/report/html/index.js",
            dependencies: [
              {
                resolved: "src/report/dependencyToIncidenceTransformer.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "../dependencyToIncidenceTransformer",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/report/html/html.template.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./html.template",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "node_modules/handlebars/runtime.js",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["npm"],
                license: "MIT",
                module: "handlebars/runtime",
                moduleSystem: "cjs",
                matchesDoNotFollow: true,
                circular: false,
                valid: true,
              },
            ],
            valid: true,
          },
          {
            source: "src/report/html/html.template.js",
            dependencies: [
              {
                resolved: "node_modules/handlebars/runtime.js",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["npm"],
                license: "MIT",
                module: "handlebars/runtime",
                moduleSystem: "cjs",
                matchesDoNotFollow: true,
                circular: false,
                valid: true,
              },
            ],
            valid: true,
          },
          {
            source: "src/report/json.js",
            dependencies: [],
            valid: true,
          },
          {
            source: "src/main/options/normalize.js",
            dependencies: [
              {
                resolved: "src/main/options/defaults.json",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./defaults.json",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
            ],
            valid: true,
          },
          {
            source: "src/main/options/defaults.json",
            followable: false,
            coreModule: false,
            couldNotResolve: false,
            matchesDoNotFollow: false,
            dependencyTypes: ["local"],
            dependencies: [],
            valid: true,
          },
          {
            source: "src/main/options/validate.js",
            dependencies: [
              {
                resolved: "node_modules/safe-regex/index.js",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["npm"],
                license: "MIT",
                module: "safe-regex",
                moduleSystem: "cjs",
                matchesDoNotFollow: true,
                circular: false,
                valid: true,
              },
            ],
            valid: true,
          },
          {
            source: "node_modules/safe-regex/index.js",
            followable: false,
            coreModule: false,
            couldNotResolve: false,
            matchesDoNotFollow: true,
            dependencyTypes: ["npm"],
            dependencies: [],
            valid: true,
          },
          {
            source: "src/main/ruleSet/normalize.js",
            dependencies: [],
            valid: true,
          },
          {
            source: "src/main/ruleSet/validate.js",
            dependencies: [
              {
                resolved: "src/main/options/validate.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "../options/validate",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/main/ruleSet/jsonschema.json",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./jsonschema.json",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "node_modules/ajv/lib/ajv.js",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["npm"],
                license: "MIT",
                module: "ajv",
                moduleSystem: "cjs",
                matchesDoNotFollow: true,
                circular: false,
                valid: true,
              },
              {
                resolved: "node_modules/safe-regex/index.js",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["npm"],
                license: "MIT",
                module: "safe-regex",
                moduleSystem: "cjs",
                matchesDoNotFollow: true,
                circular: false,
                valid: true,
              },
            ],
            valid: true,
          },
          {
            source: "src/main/ruleSet/jsonschema.json",
            followable: false,
            coreModule: false,
            couldNotResolve: false,
            matchesDoNotFollow: false,
            dependencyTypes: ["local"],
            dependencies: [],
            valid: true,
          },
          {
            source: "node_modules/ajv/lib/ajv.js",
            followable: false,
            coreModule: false,
            couldNotResolve: false,
            matchesDoNotFollow: true,
            dependencyTypes: ["npm"],
            dependencies: [],
            valid: true,
          },
          {
            source: "src/cli/getResolveConfig.js",
            dependencies: [
              {
                resolved: "path",
                coreModule: true,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["core"],
                module: "path",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
            ],
            valid: true,
          },
          {
            source: "src/cli/index.js",
            dependencies: [
              {
                resolved: "src/main/index.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "../main",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/cli/defaults.json",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./defaults.json",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/cli/formatMetaInfo.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./formatMetaInfo",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/cli/getResolveConfig.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./getResolveConfig",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/cli/initRules.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./initRules",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/cli/io.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./io",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/cli/normalizeOptions.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./normalizeOptions",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "src/cli/validateFileExistence.js",
                coreModule: false,
                followable: true,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./validateFileExistence",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "node_modules/glob/glob.js",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["npm"],
                license: "ISC",
                module: "glob",
                moduleSystem: "cjs",
                matchesDoNotFollow: true,
                circular: false,
                valid: true,
              },
              {
                resolved: "node_modules/lodash/lodash.js",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["npm"],
                license: "MIT",
                module: "lodash",
                moduleSystem: "cjs",
                matchesDoNotFollow: true,
                circular: false,
                valid: false,
                rules: [
                  {
                    severity: "info",
                    name: "prefer-no-lodash",
                  },
                ],
              },
            ],
            valid: true,
          },
          {
            source: "src/cli/defaults.json",
            followable: false,
            coreModule: false,
            couldNotResolve: false,
            matchesDoNotFollow: false,
            dependencyTypes: ["local"],
            dependencies: [],
            valid: true,
          },
          {
            source: "src/cli/initRules.js",
            dependencies: [
              {
                resolved: "src/cli/rules.starter.json",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./rules.starter.json",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "fs",
                coreModule: true,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["core"],
                module: "fs",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
            ],
            valid: true,
          },
          {
            source: "src/cli/rules.starter.json",
            followable: false,
            coreModule: false,
            couldNotResolve: false,
            matchesDoNotFollow: false,
            dependencyTypes: ["local"],
            dependencies: [],
            valid: true,
          },
          {
            source: "src/cli/io.js",
            dependencies: [
              {
                resolved: "src/cli/defaults.json",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./defaults.json",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "fs",
                coreModule: true,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["core"],
                module: "fs",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
            ],
            valid: true,
          },
          {
            source: "src/cli/normalizeOptions.js",
            dependencies: [
              {
                resolved: "src/cli/defaults.json",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["local"],
                module: "./defaults.json",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "fs",
                coreModule: true,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["core"],
                module: "fs",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
              {
                resolved: "node_modules/lodash/lodash.js",
                coreModule: false,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["npm"],
                license: "MIT",
                module: "lodash",
                moduleSystem: "cjs",
                matchesDoNotFollow: true,
                circular: false,
                valid: false,
                rules: [
                  {
                    severity: "info",
                    name: "prefer-no-lodash",
                  },
                ],
              },
            ],
            valid: true,
          },
          {
            source: "src/cli/validateFileExistence.js",
            dependencies: [
              {
                resolved: "fs",
                coreModule: true,
                followable: false,
                couldNotResolve: false,
                dependencyTypes: ["core"],
                module: "fs",
                moduleSystem: "cjs",
                matchesDoNotFollow: false,
                circular: false,
                valid: true,
              },
            ],
            valid: true,
          },
        ],
        summary: {
          violations: [
            {
              from: "src/cli/index.js",
              to: "node_modules/lodash/lodash.js",
              rule: {
                severity: "info",
                name: "prefer-no-lodash",
              },
            },
            {
              from: "src/cli/normalizeOptions.js",
              to: "node_modules/lodash/lodash.js",
              rule: {
                severity: "info",
                name: "prefer-no-lodash",
              },
            },
            {
              from: "src/extract/extract.js",
              to: "node_modules/lodash/lodash.js",
              rule: {
                severity: "info",
                name: "prefer-no-lodash",
              },
            },
            {
              from: "src/extract/index.js",
              to: "node_modules/lodash/lodash.js",
              rule: {
                severity: "info",
                name: "prefer-no-lodash",
              },
            },
          ],
          error: 0,
          warn: 0,
          info: 4,
          totalCruised: 79,
          optionsUsed: {
            rulesFile: ".dependency-cruiser-custom.json",
            outputTo: "-",
            doNotFollow: "^node_modules",
            exclude: "fixtures",
            moduleSystems: ["amd", "cjs", "es6"],
            outputType: "json",
            prefix: "https://github.com/sverweij/dependency-cruiser/blob/main/",
            tsPreCompilationDeps: false,
            preserveSymlinks: false,
          },
        },
      };

      var lModel = [
        [
          {
            name: "src/main/index.js",
            level: 0,
            valid: true,
          },
        ],
      ];

      function createFileNode(pFileName, pLevel) {
        var lDiv = document.getElementById(pFileName);
        if (!lDiv) {
          lDiv = document.createElement("div");
          lDiv.setAttribute("class", "js-file-node clickable");
          lDiv.setAttribute("data-level", pLevel);
          lDiv.textContent = pFileName;
          lDiv.addEventListener("click", (pEvent) =>
            showDependents(
              pEvent.target.innerText,
              Number.parseInt(pEvent.target.getAttribute("data-level"), 10)
            )
          );
        }
        return lDiv;
      }

      function getLevel(pFileName) {
        return lModel.findIndex((pLevel) =>
          pLevel.some((pNode) => pNode.name === pFileName)
        );
      }

      function removeLevelsAbove(pLevelNumber) {
        lModel = lModel.filter((pLevel, pIndex) => pIndex <= pLevelNumber);
      }

      function addDependentsToModel(pFileName, pLevelNumber) {
        pLevelNumber = pLevelNumber || 0;

        removeLevelsAbove(pLevelNumber);

        lModel = lModel.map((pLevel, pLevelIndex) =>
          pLevelIndex === pLevelNumber
            ? pLevel.map((pNode) =>
                pNode.name === pFileName
                  ? {
                      name: pNode.name,
                      selected: true,
                      level: pLevelNumber,
                      valid: pNode.valid,
                    }
                  : {
                      name: pNode.name,
                      selected: false,
                      level: pLevelNumber,
                      valid: pNode.valid,
                    }
              )
            : pLevel
        );

        lModel.push(
          lDependencies.modules
            .find((pModule) => pModule.source === pFileName)
            .dependencies.map((pDependent) => ({
              name: pDependent.resolved,
              valid: pDependent.hasOwnProperty("valid")
                ? pDependent.valid
                : true,
              level: pLevelNumber + 1,
            }))
        );
      }

      function showDependents(pFileName, pLevel) {
        addDependentsToModel(pFileName, pLevel);
        renderModel(lModel);
      }

      function renderModel(pModel) {
        var lRow = document.getElementById("thisrow");
        lRow.remove();
        lRow = document.createElement("td");
        lRow.setAttribute("id", "thisrow");
        document.getElementById("table").appendChild(lRow);

        pModel.forEach((pLevel) => {
          var lTD = document.createElement("td");
          pLevel.forEach((pNode) => {
            var lNode = createFileNode(pNode.name, pNode.level);
            if (pNode.selected) {
              lNode.setAttribute("class", "js-file-node clickable selected");
            }
            if (!pNode.valid) {
              lNode.setAttribute("class", "js-file-node clickable invalid");
            }
            lTD.appendChild(lNode);
          });
          lRow.appendChild(lTD);
        });
      }

      renderModel(lModel);
    </script>
  </body>
</html>
